package LeetCode;


public class No19 {

    public int getNode(ListNode head, int n){
        if(head.next==null) return n-1;
        n = getNode(head.next,n);
        if(n==0){
            head.next = head.next.next;
        }
        return n-1;
    }
    public ListNode removeNthFromEnd(ListNode head, int n) {
        if(getNode(head,n)==0) return head.next;
        return head;

//        if(n==1){
//            ListNode curr = head;
//            while(curr.next!=null){
//                if(curr.next.next==null){
//                    curr.next = null;
//                    return head;
//                }
//                curr = curr.next;
//            }
//            return null;
//        }
//        int num = 0;
//        ListNode curr = head;
//        while(curr!=null){
//            num++;
//            curr = curr.next;
//        }
//        if(num==n) return head.next;
//        num = num-n;
//        ListNode pre = null;
//        curr = head;
//        while(num>0){
//            pre = curr;
//            curr = curr.next;
//            num--;
//        }
//        pre.next = curr.next;
//        return head;
    }
}
